package com.iqiyi.pps.epg.core.rpc.qipu;


import com.iqiyi.kiwi.utils.Configuration;
import com.qiyi.knowledge.client.*;

/**
 * Created by QIYI on 13-11-28.
 */
public class QipuRequest {
    public static final String DATA_CENTER = Configuration.getString("data.center");
    public static final String ID_SERVICE_DATA_CENTER = Configuration.getString("id.service.data.center");

    public static final String QIPU_USERNAME = Configuration.getString("qipu.common.username");
    public static final String QIPU_PASSWORD = Configuration.getString("qipu.common.password");
    private ReadService readService = null;
    private WriteService writeService = null;
    private IdService idService = null;
    private FusionService fusionService = null;

    public void initService() {
        readService = ReadService.newBuilder().dataCenter(DataCenter.valueOf(DATA_CENTER.toUpperCase()))    // 设置奇谱服务的部署地区，如TEST，JYLT（济阳联通），BJDXT（北京电信通）等，具体服务的部署情况请咨询奇谱项目组
                .qps(300)                       // 设置本客户端访问服务的最高QPS（每秒访问次数），
                .username(QIPU_USERNAME).password(QIPU_PASSWORD)  // 设置访问RPC服务的用户名和密码，测试环境为mems/hao123，线上环境请联系奇谱项目组( Knowledge@qiyi.com )获取
                .timeoutMs(5000)               // 设置超时时间，默认为5秒
                .retryCount(3)                 // 设置重试次数，默认为3次
                .build();
        writeService = WriteService.newBuilder().dataCenter(DataCenter.valueOf(DATA_CENTER.toUpperCase()))    // 设置奇谱服务的部署地区，如TEST，JYLT（济阳联通），BJDXT（北京电信通）等，具体服务的部署情况请咨询奇谱项目组
                .qps(500)                       // 设置本客户端访问服务的最高QPS（每秒访问次数），
                .username(QIPU_USERNAME).password(QIPU_PASSWORD)  // 设置访问RPC服务的用户名和密码，测试环境为mems/hao123，线上环境请联系奇谱项目组( Knowledge@qiyi.com )获取
                .timeoutMs(5000)               // 设置超时时间，默认为5秒
                .retryCount(3)                 // 设置重试次数，默认为3次
                .build();
        idService = IdService.newBuilder().dataCenter(DataCenter.valueOf(ID_SERVICE_DATA_CENTER.toUpperCase()))    // 设置奇谱服务的部署地区，如TEST，JYLT（济阳联通），BJDXT（北京电信通）等，具体服务的部署情况请咨询奇谱项目组
                .qps(200)                       // 设置本客户端访问服务的最高QPS（每秒访问次数），
                .username(QIPU_USERNAME).password(QIPU_PASSWORD)  // 设置访问RPC服务的用户名和密码，测试环境为mems/hao123，线上环境请联系奇谱项目组( Knowledge@qiyi.com )获取
                .timeoutMs(5000)               // 设置超时时间，默认为5秒
                .retryCount(3)                 // 设置重试次数，默认为3次
                .build();
        fusionService = com.qiyi.knowledge.client.FusionService.newBuilder()
                .dataCenter(DataCenter.valueOf(DATA_CENTER.toUpperCase()))
                .qps(200)
                .username(QIPU_USERNAME).password(QIPU_PASSWORD)
                .build();
    }

    public ReadService getReadService() {
        return readService;
    }

    public WriteService getWriteService() {
        return writeService;
    }


    public IdService getIdService() {
        return idService;
    }

    public FusionService getFusionService() {
        return fusionService;
    }
}
